//config.h
//Copyright (C) 2009 by WiiCrazy (I.R.on)
//This is Free Software released under the GNU/GPL License.

#ifndef _CRAZYINTRO_CFG_
#define _CRAZYINTRO_CFG_
#include <gccore.h>

#define CFG_A "A"
#define _CFG_A 0 

#define CFG_B "B"
#define _CFG_B 1

#define CFG_UP "UP"
#define _CFG_UP 2

#define CFG_DOWN "DOWN"
#define _CFG_DOWN 3

#define CFG_RIGHT "RIGHT"
#define _CFG_RIGHT 4

#define CFG_LEFT "LEFT"
#define _CFG_LEFT 5

#define CFG_1 "1"
#define _CFG_1 6

#define CFG_2 "2"
#define _CFG_2 7

#define CFG_PLUS "+"
#define _CFG_PLUS 8

#define CFG_MINUS "-"
#define _CFG_MINUS 9

#define _CFG_COMPOSITE 32

#define CFG_MENU "MENU"
#define CFG_BOOTMII "BOOTMII"
#define CFG_MENU_TITLE_INDEX -1
#define CFG_TITLE_NOT_DEFINED -2
#define CFG_BOOTMII_TITLE_INDEX -3



#define CANDIDATE_CONTINUE -1
#define CANDIDATE_STOP -2

#define _NOKEY -1

typedef struct title {
	u64 titleId;
	char titleMnemonic[16];
	char titleName[40];
	char titlePath[255];
} Title;

typedef struct shortcut {
	s8 assignedKey;
	s8 titleIndex;
} Shortcut;

typedef struct hiddenshortcut {
	s8 assignedKeys[10];
	s8 titleIndex;
	s8 keyCount; 
} HiddenShortcut;


char * GetBootImage();
char * GetBootImageEnumeration();
s16 GetBootImageStart();
s16 GetBootImageEnd();
s16 GetBootImageOffsetX();
s16 GetBootImageOffsetY();
void SetBootImageOffsetX(s16 offsetX);

char * GetPressImage();
s16 GetPressImageOffsetX();
s16 GetPressImageOffsetY();
void SetPressImageOffsetX(s16);
void SetPressImageOffsetY(s16);


char * GetIntroMusic();

char * GetIntroEffect(); 
u8 GetIntroEffectParam1();
u8 GetIntroEffectParam2(); 

char * GetPictureEffect();
u8 GetPictureEffectParam1();
u8 GetPictureEffectParam2();
void SetPictureEffectParam1(u8);
void SetPictureEffectParam2(u8);

char * GetOutroEffect();
u8 GetOutroEffectParam1(); 
u8 GetOutroEffectParam2();



bool ConfigExists(void);

void CreateConfigFile(void);
char * GetVideoFile();

void LoadConfigFile();

#endif
